Search and SearchEditor (c)1991,1992 Alan Farrell and Growling Dragon Software January 2,1992 Revised: January 11, 1992 January 22, 1992 SSSSS H H A RRRRRR EEEEE W W A RRRRRR EEEEEE S H H A A R R E W W A A R R E S H H A A R R E W W A A R R E SSSSS HHHHHH AAAAA RRRRRR EEE W W W AAAAA RRRRRR EEE S H H A A R R E W W W W A A R R E SSSSS H H A A R R EEEEE W W A A R R EEEEEE Yes, Shareware. I am a starving student (ahhh, I can hear the violins now!) Send what you think it's worth. As a HINT, I would send about $10 to me if I liked it, but I am biased, aren't I. Seriously, send what you think it's worth and if you take the time to send the money send the flames also. What changes do you want to see? Like? Dislike? If you mention specific changes, I will try to incorporate them. THIS ENTIRE PACKAGE: Search SearchEditor TileExplanation.pic Search.tool 0001 0002 0003 0004 0005 0006 IS COPYRIGHT 1991,1992 ALAN FARRELL AND GROWLING DRAGON SOFTWARE. ALL RIGHTS RESERVED. THIS PACKAGE MAY NOT BE DISTRIBUTED FOR PROFIT BY ANYONE SAVE ALAN FARRELL WITHOUT EXPRESS WRITTEN PERMISSION OF ALAN FARRELL. The saint known as Fred Fish does have my permission to distribute this package. Thank you Mr. Fish. ALAN FARRELL PROVIDES NO WARRANTY OF ANY KIND AND ACCEPTS NO RESPONSIBILITY FOR THE RESULTS OF USING THIS PACKAGE. I hate legalese. Death to lawyerspeak! Kinda like Eddie Murphy...produced by...directed by...written by...starring. ---------------------------------------------------------------------------- The new stuff is at the end! Search for NEW: if you can. -AJF ---------------------------------------------------------------------------- Philosophy: (i.e. you can skip it and not miss anything useful) Search is a game where you are not chased by anything. (trans: My hand starts to hurt playing arcade games.) Search is a game where no points are awarded. (trans: If you didn't enjoy playing it, do points make it better?) Search is ultimately a puzzle to solve. No time limits. (trans: Don't you hate it when the phone rings and you forget which button pauses the damn thing??) Search is a maze game made of tiles. Tiles can be blank, hold letters, be walls, floor, holes to fill, energy to grab, different kinds of teleporters and whatever I decide to add before this is ultimately released. My philosophy designing the game was that there has to be a market out there for a game of wits. Not a game like chess, where some just cannot play, but a game that everyone can play. Levels can be designed that are just simple mazes to negotiate, tasks to solve, or questions to answer. Mazes is pretty self-explanatory. You are here. You don't want to be here, you want to be there. Get there. Tasks involve filling holes to get from here to there, finding the false walls to get from here to there, etc. Questions to answer...this is a tricky one. I think of it like this: The level designer writes a question on the floor and provides possible answers with different paths associated with each answer. The player takes the path associated with the answer he/she thinks is right. Simple, huh? Too simple? Too simple? I don't know. You tell me. I wrote this for my own enjoyment both in the coding and the maze playing. I envision using it with my kids (2 and 4) as a "fun" learning tool. I really hate the phrase "fun learning tools." If they are fun you shouldn't have to worry about what you are learning. ____________________________________________________________________________ INFO on operation: Neither program accepts command line or extended selection arguments. Both programs run under 1.3 or 2.0. They have been tested in both enviornments. Neither program multitasks NICELY! They multitask, but they are both processor hogs. This is due to the fact that I peek the Joystick data instead of the machvillian method C= recommends. In order to do it my way you have to use a busy loop, a big no-no if you want other programs to work at any speed. Without the joystick support the program will WaitPort() nicely and you notice little to no slowdown in other programs. Is it worth it? You make the choice. In both programs, pressing J will toggle the joystick on and off. The programs initially run with the joystick ON. *** BOTH PROGRAMS REQUIRE ARP.LIBRARY TO BE IN YOUR LIBS: DIRECTORY *** Search: To start: CLI: type "run search" or "search" WB : double click the icon. Control: Keyboard: 8 = up * = drop marker/return to marker Q = quit. 4 = left 6 = right 2 = dn Joystick supported for movement. Markers and quitting done with keys. SearchEditor To start CLI: type "run searcheditor" or "searcheditor" WB : double click the icon. Commands: Keyboard: 8 = up L = Load ! = Floor Tiles S = Save @ = Blue A 4 = left 6 = right Q = Quit # = Red A . = Goto 0,0 $ = Grn A 2 = dn F = Find % = Yel A M = Maze ^ = Pur A - = Prev. Tile & = Blu Destination 0 = = Next Tile * = Blu False Wall _ = Prev. Back Tile ( = Blu Teleport 0 + = Next Back Tile U = The Big Picture a-z Letters (obviously :)) Explanation of Editor commands: PLAY with them. It is much easier to understand if you do. Play the sample levels that are included. Much to be learned from my sad attempts at quick level construction. LOAD will load a level. All levels are numbered 000?. i.e. level 1 is 0001. level 10 is 0010. SAVE will save a level. See LOAD for naming. QUIT will exit with a AreYouSure? requester. It DOES NOT automaticly save levels. Goto 0,0 will move you to 0,0 in the tiles. The board is 100X100 tiles. Find will find the next occourance of the tile selected in the Back tile. Maze will generate a maze from 0,0 - 95,95 in the board. IT WILL OVERWRITE EVERYTHING ON THE BOARD PRIOR TO PRESSING M. BE CAREFUL! - (Minus sign) will go back one tile in the Front Tile. = (Equal sign) will go forward on tile in the Front Tile. _ (Underline) will go back one tile in the Back Tile. + (Plus sign) will go forward on tile in the Front Tile. !@#$%^&*( will go to the tile indicated in the Front Tile U (The Big Picture) will generate a small map of the whole 100X100 board. The approach is simple. Tiles you can walk on without anything happening are in blue. The rest are black. a-z This is kinda hard to explain and really easy to use. If your Back Tile is one of the first 5 tiles, the blank ones of different colors, when you type on the keyboard the Front tile will become the letter you type in the color of the Back tile. Use the left mouse button to place tiles in the board. One click will do. WILL NOT drag-paint tiles on board. The colored teleports teleport only to teleports of the same color. The Tiles labeled T0,T1,etc. teleport only to the FIRST tile labeled D0,D1, etc. that is the same color of the T0,T1,etc. tile. i.e. The red T0 tile will teleport to the first red D0 tile it comes to from tile 0,0. The search is from 0,0 to 100,100 incrementing X then Y. i.e. 0,0 1,0 2,0 ... The tiles that are half blank/half wall or hole are switching tiles. The player sees them as blank tiles in their color. After the player crosses the tile it becomes either a wall or a hole depending on what you chose. The tile functions thereafter exactly like a wall or hole, i.e you cannot move thru a wall and you cannot move thru a hole unless you have some power. The player tile is the circular red and yellow tile. Place this ONCE in the board for the players starting position. The player tile closest to 0,0 is the player tile. Any other tiles in the board like this will be treated as walls. The Goal Tile is the checkered tile. The player will advance to the next level upon reaching this tile. Place as many as you like, they all function the same. --------------------------------------------------------------------------- NEW: Version 2.0 and answers to some mysteries. New to 2.0: A few new levels added and some of the old ones changed to add in some of the new tiles. Menus in the editor! Load map, Save map, Clear map, Make maze, Load tools, Save tools, Find Back tile, Update Tools, Update Map, Quit. Gadgets in the editor! ++ + -- - for both Front Tile and Back Tile. ++ Forward 10 tiles. -- Back 10 tiles. + Forward 1 tile. - You guess. Toolbox! A toolbox of 74 tiles can be created, saved, and loaded in the editor. This way you are not constantly +'ing and -'ing around to get a tile. Got a tile you are going to use often? Place the pointer above one of the toolbox tiles. Press P and the tile will appear in the toolbox. To use a tile in the toolbox as the Front tile just click on the tile in the toolbox you want. To use it as the Back tile place the pointer over the tile and press B and the tile will appear as the Back Tile. The toolbox can be loaded and saved with the O and V keys respectivly. There is a toolbox included with this package. It is called Search.tool. If you try to load a non-toolbox file into the toolbox SearchEditor will take the first 74*4 bytes of the file and try to use them. If any of the longwords loaded are out of the MaxTile range, enjoy the fireworks on your screen! You have been warned. About 100 new tiles with about 4 new options. The tiles marked S1...S5 are switches that activate the tiles marked with the number 1-5. These are floor tiles that turn into walls, floor tiles that turn into false walls, and wall tiles that turn into floor tiles. The switches work only on the same color and same numbered special tiles, ie the green S1 tile will transform only green 1 floor, wall, or false tiles. There are 5 switches for each color and 5 of each special tile for each color. You are allowed as many switches and special tiles as you want on the board. 5 colors, 5 numbers, 4 kinds=100 new tiles. There is now a blank tile (see levels 6 and 7) that is not walkable and also a "false" blank tile that is walkable. The mazes are constructed a bit differently now. The old way always started a maze at 2,2 in the map and the mazes tended to run along the wall. The new maze generator chooses a spot randomly between 25 and 75 for both the x and y coordinate. This results in more "mazey" mazes. A hint about making mazes. The Front tile and the Back tile control the tiles that are used in the maze construction process. Some people where asking for a maze with both tiles set to Blue Blank and nothing was happening. Well, it was happening but you couldn't see it. My fault- kinda obscure directions. Anyway, as a hint, use the Back tile for the floor and the front tile for your walls. AND, after construction, go thru the maze to make sure that there is a solution for where YOU chose the beginning and ending to be. The maze generator will make a solveable maze from the starting point to the ending point in the generator, but since YOU choose the starting point and ending point in the game, there is no guarntee that the maze will be solvable. Check it out. Y and N will answer the Quit requester as well as using the gadgets. Do Something! means with the keyboard-more of my obscurity. When the Map is on the screen, clicking anywhere on the map will move you to that spot on the map. ***** This is an update. This program will use, without a problem, levels designed with the old SearchEditor. Neither the old SearchEditor NOR the old Search will work with the new levels. They will bomb! Choke! If you are lucky, you may get to see Rainbow_Mode on your screen. Do not even try. Once. ***** A few have asked what I used to make this beast; following is my "toolbox." C.A.P.E. 68K v2.0 for the programming. Power Windows 2.5 for converting the graphics to assembly format. Deluxe Paint III for graphics. Matt Dillon's excellent DME for editing. My system is an Amiga 500,with 2 megs of ram and a 50 Meg. HD running 1.3. The A3000 I test this on is at Put's Electronics on Watt Ave. I thank them for putting up with me interrupting their demo to play with my stuff. I have recieved, in the two weeks since I released the first version, a total of 0, count 'em 0, shareware contributions. Unless I recieve something within the next two weeks, I will not add anything else to this package. This is not a threat. I will conclude that you people are not interested. This was written primarily for my children, they are quite happy with it, and so am I. If, on the other hand, I recieve something I will do my best to add anything that is requested and contine to support this package. Up to you! BTW, this release was held up until my local user group, SACC, released their disk o' the month. Hello SACC people! --------------------------------------------------------------------------- Please! Question, comments, suggestions, SHAREWARE FEE!: GEnie: XTY01282 CIS : 74007,3420 Mail : 143 Fern Ct. Sacramento, CA 95819 Note: The above mailing address is not my own! I move too much. A friend has generously agreed to accept my mail on this project. Be sure to put my name, Alan, on the envelope!